#ifndef NVPERF_COMMON_WRAPPER_H
#define NVPERF_COMMON_WRAPPER_H

#define NVPA_Status                                  MXPA_Status
#define NVPA_STATUS_SUCCESS                          MXPA_STATUS_SUCCESS
#define NVPA_STATUS_ERROR                            MXPA_STATUS_ERROR
#define NVPA_STATUS_INTERNAL_ERROR                   MXPA_STATUS_INTERNAL_ERROR
#define NVPA_STATUS_NOT_INITIALIZED                  MXPA_STATUS_NOT_INITIALIZED
#define NVPA_STATUS_NOT_LOADED                       MXPA_STATUS_NOT_LOADED
#define NVPA_STATUS_FUNCTION_NOT_FOUND               MXPA_STATUS_FUNCTION_NOT_FOUND
#define NVPA_STATUS_NOT_SUPPORTED                    MXPA_STATUS_NOT_SUPPORTED
#define NVPA_STATUS_NOT_IMPLEMENTED                  MXPA_STATUS_NOT_IMPLEMENTED
#define NVPA_STATUS_INVALID_ARGUMENT                 MXPA_STATUS_INVALID_ARGUMENT
#define NVPA_STATUS_INVALID_METRIC_ID                MXPA_STATUS_INVALID_METRIC_ID
#define NVPA_STATUS_DRIVER_NOT_LOADED                MXPA_STATUS_DRIVER_NOT_LOADED
#define NVPA_STATUS_OUT_OF_MEMORY                    MXPA_STATUS_OUT_OF_MEMORY
#define NVPA_STATUS_INVALID_THREAD_STATE             MXPA_STATUS_INVALID_THREAD_STATE
#define NVPA_STATUS_FAILED_CONTEXT_ALLOC             MXPA_STATUS_FAILED_CONTEXT_ALLOC
#define NVPA_STATUS_UNSUPPORTED_GPU                  MXPA_STATUS_UNSUPPORTED_GPU
#define NVPA_STATUS_INSUFFICIENT_DRIVER_VERSION      MXPA_STATUS_INSUFFICIENT_DRIVER_VERSION
#define NVPA_STATUS_OBJECT_NOT_REGISTERED            MXPA_STATUS_OBJECT_NOT_REGISTERED
#define NVPA_STATUS_INSUFFICIENT_PRIVILEGE           MXPA_STATUS_INSUFFICIENT_PRIVILEGE
#define NVPA_STATUS_INVALID_CONTEXT_STATE            MXPA_STATUS_INVALID_CONTEXT_STATE
#define NVPA_STATUS_INVALID_OBJECT_STATE             MXPA_STATUS_INVALID_OBJECT_STATE
#define NVPA_STATUS_RESOURCE_UNAVAILABLE             MXPA_STATUS_RESOURCE_UNAVAILABLE
#define NVPA_STATUS_DRIVER_LOADED_TOO_LATE           MXPA_STATUS_DRIVER_LOADED_TOO_LATE
#define NVPA_STATUS_INSUFFICIENT_SPACE               MXPA_STATUS_INSUFFICIENT_SPACE
#define NVPA_STATUS_OBJECT_MISMATCH                  MXPA_STATUS_OBJECT_MISMATCH
#define NVPA_STATUS_VIRTUALIZED_DEVICE_NOT_SUPPORTED MXPA_STATUS_VIRTUALIZED_DEVICE_NOT_SUPPORTED
#define NVPA_STATUS_PROFILING_NOT_ALLOWED            MXPA_STATUS_PROFILING_NOT_ALLOWED
#define NVPA_STATUS__COUNT                           MXPA_STATUS__COUNT

#define NVPA_ActivityKind MXPA_ActivityKind
#define  NVPA_ACTIVITY_KIND_INVALID MXPA_ACTIVITY_KIND_INVALID
#define  NVPA_ACTIVITY_KIND_PROFILER MXPA_ACTIVITY_KIND_PROFILER
#define  NVPA_ACTIVITY_KIND_REALTIME_SAMPLED MXPA_ACTIVITY_KIND_REALTIME_SAMPLED
#define  NVPA_ACTIVITY_KIND_REALTIME_PROFILER MXPA_ACTIVITY_KIND_REALTIME_PROFILER
#define  NVPA_ACTIVITY_KIND__COUNT MXPA_ACTIVITY_KIND__COUNT

#define NVPA_STRUCT_SIZE MXPA_STRUCT_SIZE

#endif
